package com.wanma.recuit.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

public class Apply implements Serializable {

    private Resume resume;

    public Resume getResume() {
        return resume;
    }

    public void setResume(Resume resume) {
        this.resume = resume;
    }

    /**
     * 申请职位的id
     */
    private Integer id;

    /**
     * 求职用户的id
     */
    private User user;

    public User getUser() {
        return user;
    }

    public void setUser(User user) {
        this.user = user;
    }

    public Job getJob() {
        return job;
    }

    public void setJob(Job job) {
        this.job = job;
    }

    /**
     * 所申请职位的id
     */
    private Job job;

    /**
     * 申请记录状态的id
     */
    private Integer statusId;

    /**
     * 申请发送时间
     */
    private Date sendTime;

    /**
     * 用户申请被通过待拥堵确认的时间
     */
    private Date acceptedTime;

    /**
     * 用户同意面试的时间
     */
    private Date acceptTime;

    /**
     * 用户拒绝面试的时间
     */
    private Date refuseTime;

    /**
     * 用户申请被拒绝的时间
     */
    private Date refusedTime;

    /**
     * 面试的联系人
     */
    private String linkPerson;

    /**
     * 面试联系人电话
     */
    private String linkPhone;

    /**
     * 面试时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date interviewTime;

    /**
     * 面试的地点
     */
    private String interviewAdress;

    /**
     * 面试主题
     */
    private String title;

    /**
     * 补充说明
     */
    private String content;

    /**
     * 邮箱
     */
    private String mailbox;

    public String getLinkPerson() {
        return linkPerson;
    }

    public void setLinkPerson(String linkPerson) {
        this.linkPerson = linkPerson;
    }

    public String getLinkPhone() {
        return linkPhone;
    }

    public void setLinkPhone(String linkPhone) {
        this.linkPhone = linkPhone;
    }

    public Date getInterviewTime() {
        return interviewTime;
    }

    public void setInterviewTime(Date interviewTime) {
        this.interviewTime = interviewTime;
    }

    public String getInterviewAdress() {
        return interviewAdress;
    }

    public void setInterviewAdress(String interviewAdress) {
        this.interviewAdress = interviewAdress;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getMailbox() {
        return mailbox;
    }

    public void setMailbox(String mailbox) {
        this.mailbox = mailbox;
    }

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }



    public Integer getStatusId() {
        return statusId;
    }

    public void setStatusId(Integer statusId) {
        this.statusId = statusId;
    }

    public Date getSendTime() {
        return sendTime;
    }

    public void setSendTime(Date sendTime) {
        this.sendTime = sendTime;
    }

    public Date getAcceptedTime() {
        return acceptedTime;
    }

    public void setAcceptedTime(Date acceptedTime) {
        this.acceptedTime = acceptedTime;
    }

    public Date getAcceptTime() {
        return acceptTime;
    }

    public void setAcceptTime(Date acceptTime) {
        this.acceptTime = acceptTime;
    }

    public Date getRefuseTime() {
        return refuseTime;
    }

    public void setRefuseTime(Date refuseTime) {
        this.refuseTime = refuseTime;
    }

    public Date getRefusedTime() {
        return refusedTime;
    }

    public void setRefusedTime(Date refusedTime) {
        this.refusedTime = refusedTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", userId=").append(user.getId());
        sb.append(", jobId=").append(job.getId());
        sb.append(", statusId=").append(statusId);
        sb.append(", sendTime=").append(sendTime);
        sb.append(", acceptedTime=").append(acceptedTime);
        sb.append(", acceptTime=").append(acceptTime);
        sb.append(", refuseTime=").append(refuseTime);
        sb.append(", refusedTime=").append(refusedTime);
        sb.append("]");
        return sb.toString();
    }
}